package com.quartet.modules.vehicle.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 车辆位置表(TTerminalPositionInfo)表实体类
 *
 * @author makejava
 * @since 2021-05-09 12:32:14
 */
@Data
@ApiModel(value = "终端位置")
public class TTerminalPositionInfoResponseDto implements Serializable {

    /**
     * @Fields serialVersionUID
     */
    private static final long serialVersionUID = -4635192599540345301L;

    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    private Integer id;
    /**
     * 终端编码
     */
    @ApiModelProperty(value = "终端编码")
    private String terminalCode;
//    /**
//     * 车牌号
//     */
//    @ApiModelProperty(value = "车牌号")
//    private String carNumber;
    /**
     * 当前时间
     */
    @ApiModelProperty(value = "当前时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime currTime;
    /**
     * X轴位置
     */
    @ApiModelProperty(value = "X轴位置")
    private float positionX;
    /**
     * Y轴位置
     */
    @ApiModelProperty(value = "Y轴位置")
    private float positionY;
    /**
     * 流量卡号
     */
    @ApiModelProperty(value = "流量卡号")
    private String flowCardNumber;
    /**
     * 服务器时间
     */
    @ApiModelProperty(value = "服务器时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime serverTime;
    /**
     * 设备时间
     */
    @ApiModelProperty(value = "设备时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime equipmentTime;
    /**
     * 速度单位km/小时
     */
    @ApiModelProperty(value = "速度单位km/小时")
    private float speed;
    /**
     * 方向
     */
    @ApiModelProperty(value = "方向")
    private String direction;
    /**
     * 定位类型
     */
    @ApiModelProperty(value = "定位类型")
    private Integer positioningType;
    /**
     * 当日里程
     */
    @ApiModelProperty(value = "当日里程")
    private float currentDayMileage;
    /**
     * 总里程
     */
    @ApiModelProperty(value = "总里程")
    private float totalMileage;
    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private String longitude;
    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private String latitude;
    /**
     * 报警
     */
    @ApiModelProperty(value = "报警")
    private String reportAlarm;
    /**
     * 车辆状态
     */
    @ApiModelProperty(value = "车辆状态")
    private Integer vehicleStatus;
    /**
     * 位置
     */
    @ApiModelProperty(value = "位置")
    private String position;
    /**
     * 开始时间
     */
    @ApiModelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime startTime;
    /**
     * 结束时间
     */
    @ApiModelProperty(value = "结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endTime;
    /**
     * 停车时长
     */
    @ApiModelProperty(value = "停车时长")
    private float parkingTime;
    /**
     * 经纬度
     */
    @ApiModelProperty(value = "经纬度")
    private String longitudeLatitude;
    /**
     * 停车位置
     */
    @ApiModelProperty(value = "停车位置")
    private String parkingPosition;
    /**
     * 报警状态
     */
    @ApiModelProperty(value = "报警状态")
    private String alarmStatus;
    /**
     * 报警时间
     */
    @ApiModelProperty(value = "报警时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime alarmTime;
    /**
     * 报警地点
     */
    @ApiModelProperty(value = "报警地点")
    private String alarmPosition;
    /**
     * 区域位置
     */
    @ApiModelProperty(value = "区域位置")
    private String regionalPosition;
    /**
     * 超速时长
     */
    @ApiModelProperty(value = "超速时长")
    private float overSpeedDuration;
    /**
     * 开始位置
     */
    @ApiModelProperty(value = "开始位置")
    private String beginPosition;
    /**
     * 结束位置
     */
    @ApiModelProperty(value = "结束位置")
    private String endPosition;
    /**
     * 报警类型
     */
    @ApiModelProperty(value = "报警类型")
    private Integer alarmType;
    /**
     * 报警级别
     */
    @ApiModelProperty(value = "报警级别")
    private String alarmLevel;
    /**
     * 文件个数
     */
    @ApiModelProperty(value = "文件个数")
    private Integer fileNumber;
    /**
     * 处理状态
     */
    @ApiModelProperty(value = "处理状态")
    private String processingStatus;
    /**
     * 拍照时间
     */
    @ApiModelProperty(value = "拍照时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime photoTime;
    /**
     * 通道
     */
    @ApiModelProperty(value = "通道")
    private String passageway;
    /**
     * 方式
     */
    @ApiModelProperty(value = "方式")
    private String mode;
    /**
     * 在线状态 0:在线 1：离线
     */
    @ApiModelProperty(value = "在线状态 0:在线 1：离线")
    private String onlineStatus;

    /**
     * 道路等级
     */
    @ApiModelProperty(value = "道路等级")
    private Integer roadGrade;
    /**
     * 道路限速单位km/小时
     */
    @ApiModelProperty(value = "道路限速单位km/小时")
    private float roadLimitSpeed;

    /**
     * 删除标识 0未删除 1删除
     */
    @ApiModelProperty(value = "删除标识 0未删除 1删除")
    private Integer deleted;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    /**
     * 在区域开始时间
     */
    @ApiModelProperty(value = "在区域开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime regionStartTime;

    /**
     * 在区域结束时间
     */
    @ApiModelProperty(value = "在区域结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime regionEndTime;

    /**
     * 在区域时长
     */
    @ApiModelProperty(value = "在区域时长")
    private float regionTimePeriod;

    /**
     * 最大速度
     */
    @ApiModelProperty(value = "最大速度")
    private float maxSpeed;

    /**
     * 客户编码
     */
    @ApiModelProperty(value = "客户编码")
    private String customerCode;

    /**
     * 客户名称
     */
    @ApiModelProperty(value = "客户名称")
    private String customerName;

    /**
     * 状态标识
     */
    @ApiModelProperty(value = "状态标识")
    private Integer status;

}
